package com.ly.erms.core.shiro.factory;

import java.util.List;

import org.apache.shiro.authc.SimpleAuthenticationInfo;

import com.ly.erms.common.persistence.model.User;
import com.ly.erms.core.shiro.ShiroUser;

/**
 * 定义shirorealm所需要的接口
 * @author 刘洋
 * @date 2018年1月2日
 */
public interface IShiro {
	/**
	 * 根据账号获取登录用户
	 */
	User user(String account);
	
	/**
	 * 根据系统用户获取Shiro的用户
	 */
	ShiroUser shiroUser(User user);
	
	/**
	 * 获取权限列表通过角色id
	 */
	List<String> findPermissionByRoleId(Integer roleId);
	
	/**
	 * 获取角色名称通过角色id
	 */
	String findRoleNameByRoleId(Integer roleId);
	
	/**
	 * 获取shiro的认证信息
	 */
	SimpleAuthenticationInfo info(ShiroUser shiroUser,User user,String realmName);
}
